valueBox(total_lang, icon = "fa-language", color = "white")
24
valueBox(total_trans_msg, icon = "fa-comment", color = "white")
65226
valueBox(total_untrans_msg, icon = "fa-comment-slash", color = "white")
72604
valueBox(total_fuzzy_msg, icon = "fa-puzzle-piece", color = "white")
4753
trans_stats <- SharedData$new(final_df)
# Filter Select Input - Language
filter_select(id = "language",
label = "Select Translation Language",
sharedData = trans_stats,
group = ~language)
trans_stats <- plot_ly(trans_stats, x = ~package, y = ~translated_count, type = 'bar', name = 'Translated Messages')
trans_stats <- trans_stats %>% add_trace(y = ~untranslated_count, name = 'Untranslated Messages')
trans_stats <- trans_stats %>% add_trace(y = ~fuzzy_count, name = 'Fuzzy Messages')
trans_stats <- trans_stats %>% layout(yaxis = list(title = 'Message Count'), xaxis = list(title = "Packages"), barmode = 'group')
trans_stats
complete_trans_df %>%
reactable(
.,
pagination = TRUE,
showPageSizeOptions = TRUE,
highlight = TRUE,
defaultSorted = "translated_count",
defaultColDef = colDef(headerClass = "header", align = "left"),
columns = list(
package = colDef(
name = "Package Name",
width = 150,
defaultSortOrder = "desc",
filterable = TRUE,
),
language = colDef(
name = "Language",
width = 150,
filterable = TRUE,
),
untranslated_count = colDef(
show = FALSE
),
translated_count = colDef(
name = "Translated Message Count",
defaultSortOrder = "desc",
cell = function(value) {
width <- paste0(value * 100 / max(complete_trans_df$translated_count), "%")
value <- format(value, big.mark = ",")
value <- format(value, width = 9, justify = "right")
bar <- div(
class = "bar-chart",
style = list(marginRight = "6px"),
div(class = "bar", style = list(width = width, backgroundColor = "#fc5185"))
)
div(class = "bar-cell", span(class = "number", value), bar)
}
)),
compact = TRUE,
bordered = TRUE,
class = "categories-tbl"
)
complete_untrans_df %>%
reactable(
.,
pagination = TRUE,
showPageSizeOptions = TRUE,
highlight = TRUE,
defaultSorted = "untranslated_count",
defaultColDef = colDef(headerClass = "header", align = "left"),
columns = list(
package = colDef(
name = "Package Name",
width = 150,
defaultSortOrder = "desc",
filterable = TRUE,
),
language = colDef(
name = "Language",
width = 150,
filterable = TRUE,
),
translated_count = colDef(
show = FALSE
),
untranslated_count = colDef(
name = "Untranslated Message Count",
defaultSortOrder = "desc",
cell = function(value) {
width <- paste0(value * 100 / max(complete_untrans_df$untranslated_count), "%")
value <- format(value, big.mark = ",")
value <- format(value, width = 9, justify = "right")
bar <- div(
class = "bar-chart",
style = list(marginRight = "6px"),
div(class = "bar", style = list(width = width, backgroundColor = "#3fc1c9"))
)
div(class = "bar-cell", span(class = "number", value), bar)
}
)),
compact = TRUE,
bordered = TRUE,
class = "categories-tbl"
)
final_df %>%
reactable(
.,
pagination = TRUE,
showPageSizeOptions = TRUE,
highlight = TRUE,
defaultColDef = colDef(headerClass = "header", align = "left"),
columns = list(
package = colDef(
name = "Package Name",
width = 150,
defaultSortOrder = "desc",
filterable = TRUE,
),
language = colDef(
name = "Language",
width = 150,
filterable = TRUE,
),
translated_count = colDef(
show = FALSE
),
untranslated_count = colDef(
show = FALSE
),
fuzzy_count = colDef(
show = FALSE
),
pc_trans_count = colDef(
name = "Translated Message",
cell = function(value) {
value <- paste0(format(round(value * 100, 2), nsmall = 1), "%")
value <- format(value, width = 9, justify = "right")
bar <- div(
class = "bar-chart",
style = list(marginRight = "6px"),
div(class = "bar", style = list(width = value, backgroundColor = "#fc5185"))
)
div(class = "bar-cell", span(class = "number", value), bar)
}
),
pc_untrans_count = colDef(
name = "Untranslated Message",
cell = function(value) {
value <- paste0(format(round(value * 100, 2), nsmall = 1), "%")
value <- format(value, width = 9, justify = "right")
bar <- div(
class = "bar-chart",
style = list(marginRight = "6px"),
div(class = "bar", style = list(width = value, backgroundColor = "#3fc1c9"))
)
div(class = "bar-cell", span(class = "number", value), bar)
}
),
pc_fuzzy_count = colDef(
name = "Fuzzy Message",
cell = function(value) {
value <- paste0(format(round(value * 100, 2), nsmall = 1), "%")
value <- format(value, width = 9, justify = "right")
bar <- div(
class = "bar-chart",
style = list(marginRight = "6px"),
div(class = "bar", style = list(width = value, backgroundColor = "#241327"))
)
div(class = "bar-cell", span(class = "number", value), bar)
}
)),
compact = TRUE,
bordered = TRUE,
class = "categories-tbl"
)
translation_teams %>%
reactable(
.,
pagination = TRUE,
showPageSizeOptions = TRUE,
highlight = TRUE,
defaultColDef = colDef(headerClass = "header", align = "left"),
columns = list(
Language = colDef(
name = "Translation Languages",
filterable = TRUE,
),
Members = colDef(
name = "R-Core Lead Maintainers",
filterable = TRUE,
),
Contact = colDef(
name = "Email Contacts",
filterable = TRUE,
)),
compact = TRUE,
bordered = TRUE,
class = "categories-tbl"
)